xend: Memory pool for pv guest on systems with >128G memory
authorKeir Fraser <keir.fraser@citrix.com>
Wed, 2 Dec 2009 08:51:12 +0000 (08:51 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Wed, 2 Dec 2009 08:51:12 +0000 (08:51 +0000)
commite45215a3fe22c63f9a7d13dd1a73020e10a9e6de
treec04062ddc0d380f0d6efb60bf122119ac97c069b
parentda583c807c223b6532c8cf2791057c330011964a
xend: Memory pool for pv guest on systems with >128G memory

The main idea of this patch is:

1) The admin sets aside some memory below 128G for 32-bit paravirtual
domain creation (via dom0_mem=-<value> in kernel comand line).

2) The admin also explicitly states to the tools (i..e xend) how much
memory is supposed to be left untouched by 64-bit domains

3) If a 32-bit pv DomU gets created, no ballooning ought to be
necessary (since if it is, no guarantee can be made about the address
range of the memory ballooned out), and memory gets allocated from the
reserved range.

4) Upon 64-bit (or 32-bit HVM or HVM) DomU creation, the tools
determine the amount of memory to be ballooned out of Dom0 by adding
the amount needed for the new guest and the amount still in the
reserved pool (and then of course subtracting the total amount of
memory the hypervisor has available for guest use).

Signed-off-by: james song (wei) <jsong@novell.com>
tools/examples/xend-config.sxp
tools/libxc/xc_dom_compat_linux.c
tools/libxc/xenguest.h
tools/python/xen/lowlevel/xc/xc.c
tools/python/xen/xend/MemoryPool.py [new file with mode: 0644]
tools/python/xen/xend/XendDomainInfo.py
tools/python/xen/xend/XendOptions.py
tools/python/xen/xend/balloon.py
tools/python/xen/xend/image.py